package com.divemotor.ventarepuestosinternet.service.impl;

import java.io.Serializable;
import java.util.List;

import org.primefaces.model.SortOrder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.divemotor.ventarepuestosinternet.dao.ClienteDAO;
import com.divemotor.ventarepuestosinternet.exception.DivemotorBusinessException;
import com.divemotor.ventarepuestosinternet.model.Cliente;
import com.divemotor.ventarepuestosinternet.service.ClienteService;

@Service(value="clienteService")
@Transactional
public class ClienteServiceImpl implements ClienteService, Serializable{

	private static final long serialVersionUID = 1L;
	
	@Autowired
	private ClienteDAO clienteDAO;

	
	@Override
	public Integer cantidadClientes() throws DivemotorBusinessException {
	
		return clienteDAO.cantidadClientes();
	}

	@Override
	public List<Cliente> buscar(int first, int pageSize, Cliente clienteBuscar,SortOrder sortOrder,String sortedField)
			throws DivemotorBusinessException {
		return clienteDAO.buscar(first,pageSize,clienteBuscar,sortOrder,sortedField);
	}

	@Override
	public Integer cantidadClientes(Cliente clienteBuscar)
			throws DivemotorBusinessException {
		
		return clienteDAO.cantidadClientes(clienteBuscar);
	}

	@Override
	public List<Cliente> listar(int first, int pageSize, SortOrder sortOrder, String sortField) {
		 List<Cliente> clientes =  clienteDAO.listar(first,pageSize,sortOrder,sortField);
		return clientes;
	}


}
